Search information and retrieval systems are common tools enabling users to find desired information relating to a topic. From Web search engines to desktop application utilities (e.g., help systems), users consistently utilize information and retrieval systems to discover unknown information about topics of interest. In some cases, these topics are prearranged into topic and subtopic areas. For example, “Yahoo” provides a hierarchically arranged predetermined list of possible topics (e.g., business, government, science, etc.) wherein the user will select a topic and then further choose a subtopic within the list. Another example of predetermined lists of topics is common on desktop personal computer help utilities wherein a list of help topics and related subtopics are provided to the user. While these predetermined hierarchies may be useful in some contexts, users often need to search for/inquire about information outside of and/or not included within these predetermined lists. Thus, search engines or other search systems are often employed to enable users to direct user-crafted queries in order to find desired information. Unfortunately, this often leads to frustration when many unrelated files are retrieved since users may be unsure of how to author or craft a particular query. This often causes users to continually modify queries in order to refine retrieved search results to a reasonable number of files.
As an example of this dilemma, it is not uncommon to type in a word or phrase in a search system input query field and retrieve several thousand files—or millions of web sites in the case of the Internet, as potential candidates. In order to make sense of the large volume of retrieved candidates, the user will often experiment with other word combinations to further narrow the list since many of the retrieved results may share common elements, terms or phrases yet have little or no contextual similarity in subject matter. This approach is inaccurate and time consuming for both the user and the system performing the search. Inaccuracy is illustrated in the retrieval of thousands if not millions of unrelated files/sites the user is not interested in. Time and system processing speed are also sacrificed when searching massive databases for possible yet unrelated files.
Generally, conventional search systems will search for information in a flat or non-hierarchical manner that can exacerbate the accuracy and speed problems described above. In other words, the search system will attempt to match or find all topics relating to the user's query input regardless of whether the “searched for” topics have any contextual relationship to the topical area or category of what the user is actually interested in. As an example, if a user were to input the word “Saturn” into a conventional search system, all types of unrelated results are likely to be “searched for” and returned such as relating to cars, car dealers, planets, computer games, and other sites having the word “Saturn”. Similar results are also achieved with phrases wherein many unrelated topics may be “searched for” and returned in response to the combination of words in the phrases. Consequently, as a result of conventional flat, non-hierarchical search architectures, wherein substantially all potential topics are analyzed for common elements or element combinations of the query input, and as a result of ever increasing databases for storing these topics, user frustrations continue to grow and system performance decreases as more and more potential “search results” are returned having related elements but little contextual similarity.
In view of the above problems associated with conventional search and information retrieval systems, there is a need for a system and/or methodology to mitigate search and retrieval of unrelated information and to facilitate finding information without having to continually author or craft ever more sophisticated queries.